/*
============================================================================
 Name        : Playlist.h
 Author      : 
 Version     :
 Copyright   : Your copyright notice
 Description : CPlaylist declaration
============================================================================
*/

#ifndef __PLAYLIST_H__
#define __PLAYLIST_H__

// INCLUDES
#include <e32std.h>
#include <e32base.h>

class TTrack
{
public: // Constructor and destructor
	TTrack();
	~TTrack();

public: //new functions
	const TDesC& Location() const;
	void SetLocation(const TDesC& aLocation);

	const TDesC& Title() const;
	void SetTitle(const TDesC& aTitle);

	const TDesC& Artist() const;
	void SetArtist(const TDesC& aArtist);

	const TDesC& Album() const;
	void SetAlbum(const TDesC& aAlbum);

	const TDesC& ImageUrl() const;
	void SetImageUrl(const TDesC& aImageUrl);


private: //data
	HBufC* iLocation;
	HBufC* iTitle;
	HBufC* iArtist;
	HBufC* iAlbum;
	HBufC* iImageUrl;
};

class TPlaylist
{
public:
	TPlaylist();
	~TPlaylist();

public: //new functions
	const TDesC& Title() const;
	void SetTitle(const TDesC& aTitle);

	RPointerArray<TTrack> Tracks();
	void AppendTrackL(TTrack* aTrack);


private: //data
	TBuf<256> iTitle;
	RPointerArray<TTrack> iTracks;
};

#endif // __PLAYLIST_H__
